package net.realsee.framework.plc;

import net.realsee.domain.wcs.device.bo.PlcReadWriteBo;

/**
 * 所有的和设备或是交互类统一读写标准，公开了如何读写对方的一些api接口，并支持基于特性的读写操作
 *
 * @author 孙正华
 * @since 2023/8/10 9:49
 */
public interface IPlcReadWrite {

    /**
     * 读取PLC
     */
    PlcOperateResult read(PlcReadWriteBo readWriteBo);

    /**
     * 写入PLC
     */
    PlcOperateResult write(PlcReadWriteBo readWriteBo);

    /**
     * 监听PLC
     */
    PlcOperateResult monitor();

    /**
     * 销毁设备的数据交互类
     */
    void destroy(String device);

}
